package com.qf.face.util;

import java.lang.reflect.Field;

public class DllFileUtil {
    public static void addDirToPath(String s){
        try {
            //获取JVM运行时加载的目录，目录当中所有的dll都可以被jvm动态装配
            Field field = ClassLoader.class.getDeclaredField("sys_paths");
            //设置此变量可访问
            field.setAccessible(true);
            //获取此变量的值
            String[] path=(String[]) field.get(null);
            //创建一个新的数组，比path多一个元素
            String[] temp=new String[path.length+1];
            //复制path每个元素到temp中
            System.arraycopy(path,0,temp,0,path.length);
            //把我们希望加入的目录放到最后
            temp[path.length]=s;
            //把我们设计的temp集合放回classloader里
            field.set(null,temp);
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}
